#include "wx/wxprec.h"

#ifdef __BORLANDC__
#pragma hdrstop
#endif

#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif

#include "EditNotebook.h"

#include "wx/arrimpl.cpp"
WX_DEFINE_OBJARRAY(EditArray); 
WX_DEFINE_OBJARRAY(MySQLArray); 
WX_DEFINE_OBJARRAY(SelectedIndexArray);

BEGIN_EVENT_TABLE( EditNotebook, wxAuiNotebook )
END_EVENT_TABLE()

EditNotebook::EditNotebook(wxWindow* parent, wxWindowID id, 
		const wxPoint& pos, 
		const wxSize& size,const wxString& name)
		:wxAuiNotebook(parent,id,pos,size,wxNB_TOP )
{
	SetArtProvider(new wxAuiSimpleTabArt);
}

EditNotebook::~EditNotebook(){
	editArray.Clear();
	mysqlArray.Clear();
	selected.Clear();
}

void EditNotebook::AddEdit(MYSQL* mysql,wxString name)
{
	Edit* edit = new Edit(this,wxID_ANY,wxDefaultPosition,wxDefaultSize,wxSUNKEN_BORDER|wxVSCROLL,GetEditCount());
	AddPage(edit,name);
	mysqlArray.Add(mysql);
	editArray.Add(edit);
	selected.Add(-1);
}

void EditNotebook::ClosePageByIndex(int index)
{	
	DeletePage(index);editArray.RemoveAt(index,1);
	mysqlArray.RemoveAt(index,1);
	dbList.RemoveAt(index,1); 
	selected.RemoveAt(index,1); 
}

void EditNotebook::AddDbList(wxString list, bool initial,int index)
{
	if ( initial ){
		dbList.Add(list);
	}
	else{
		dbList[index] = list;
	}
}
